/************************************
 * created by Tonk (tonk@ctonk.com) *
 ************************************/

// mob.h

#ifndef MOB_H
#define MOB_H

#include "definitions.h"
#include <iostream>
#include <fstream>
#include "creature.h"
#include "room.h"

class Area;

class Mob: public Creature {
	private:
		int		_vnum;
		Area*	_area;
		std::string _long;
		std::string _short;
		time_t	_whenMove;

		// Methods...
		void	move();
		void	reset();

	public:
		Mob();
		//Mob( Mob& );
		~Mob();

		Mob& operator = ( Mob& );

		// Public accessor methods...
		void	setVnum( int );
		int		getVnum();
		void	setArea( Area* );
		Area*	getArea();
		void	setLong( std::string );
		std::string getLong();
		void	setShort( std::string );
		std::string getShort();
		void	setWhenMove( time_t );
		time_t	getWhenMove();

		// Other methods...
		void	mSave( std::ofstream& );
		void	mLoad( std::ifstream& );
		void	update();

		static int numMobs;
};



#endif // #ifndef MOB_H
